package com.qianli.cashmama.trade.entity;

import com.fqgj.common.entity.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * User: anonymous
 * Date: 2020-10-31
 * Time: 23:45:09.497
 * TableDesc:
 */
public class TBillEntity extends BaseEntity {
    /**
     * 账单编号
     */
    private String billNo;
    /**
     * 交易编号
     */
    private String tradeNo;
    /**
     * 产品类目
     */
    private String productCategory;
    /**
     * 产品编码
     */
    private String productCode;
    /**
     * 当前期数
     */
    private Integer currentPeriod;
    /**
     * 账单状态 0未还 1还清
     */
    private Integer status;
    /**
     * 还款状态 0 初始化 1 部分还款 2还清
     */
    private Integer paidStatus;
    /**
     * 借款金额
     */
    private BigDecimal borrowCapital;
    /**
     * 到账金额
     */
    private BigDecimal receivedCapital;
    /**
     * 利息(个税贷借款利息)
     */
    private BigDecimal interestFee;
    /**
     * 服务费(个税贷=总本金*1%)
     */
    private BigDecimal borrowServiceFee;
    /**
     * 应还金额(个税贷=本金+利息+服务费)
     */
    private BigDecimal repaymentCapital;
    /**
     * 已还金额(=实际还款金额+抵扣金额)
     */
    private BigDecimal paidCapital;
    /**
     * 抵扣金额
     */
    private BigDecimal discountCapital;
    /**
     * 展期次数
     */
    private Integer extensionCount;
    /**
     * 应还时间
     */
    private Date repaymentDate;
    /**
     * 还清时间
     */
    private Date payOffDate;
    /**
     * 逾期服务费(账单结清时计算)
     */
    private BigDecimal overdueServiceFee;
    /**
     * 逾期费 按天计费(账单结清时计算)
     */
    private BigDecimal overdueFee;
    /**
     * 理论应还总金额(账单结清时计算)
     */
    private BigDecimal theoreticalTotalAmount;
    /**
     * 闪电周转billType=2迁移数据
     */
    private Long billId;
    /**
     *
     */
    private Date createDt;


    public String getBillNo() {
        return this.billNo;
    }

    public TBillEntity setBillNo(String billNo) {
        this.billNo = billNo;
        return this;
    }

    public String getTradeNo() {
        return this.tradeNo;
    }

    public TBillEntity setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
        return this;
    }

    public String getProductCategory() {
        return this.productCategory;
    }

    public TBillEntity setProductCategory(String productCategory) {
        this.productCategory = productCategory;
        return this;
    }

    public String getProductCode() {
        return this.productCode;
    }

    public TBillEntity setProductCode(String productCode) {
        this.productCode = productCode;
        return this;
    }

    public Integer getCurrentPeriod() {
        return this.currentPeriod;
    }

    public TBillEntity setCurrentPeriod(Integer currentPeriod) {
        this.currentPeriod = currentPeriod;
        return this;
    }

    public Integer getStatus() {
        return this.status;
    }

    public TBillEntity setStatus(Integer status) {
        this.status = status;
        return this;
    }

    public Integer getPaidStatus() {
        return this.paidStatus;
    }

    public TBillEntity setPaidStatus(Integer paidStatus) {
        this.paidStatus = paidStatus;
        return this;
    }

    public BigDecimal getBorrowCapital() {
        return this.borrowCapital;
    }

    public TBillEntity setBorrowCapital(BigDecimal borrowCapital) {
        this.borrowCapital = borrowCapital;
        return this;
    }

    public BigDecimal getReceivedCapital() {
        return this.receivedCapital;
    }

    public TBillEntity setReceivedCapital(BigDecimal receivedCapital) {
        this.receivedCapital = receivedCapital;
        return this;
    }

    public BigDecimal getInterestFee() {
        return this.interestFee;
    }

    public TBillEntity setInterestFee(BigDecimal interestFee) {
        this.interestFee = interestFee;
        return this;
    }

    public BigDecimal getBorrowServiceFee() {
        return this.borrowServiceFee;
    }

    public TBillEntity setBorrowServiceFee(BigDecimal borrowServiceFee) {
        this.borrowServiceFee = borrowServiceFee;
        return this;
    }

    public BigDecimal getRepaymentCapital() {
        return this.repaymentCapital;
    }

    public TBillEntity setRepaymentCapital(BigDecimal repaymentCapital) {
        this.repaymentCapital = repaymentCapital;
        return this;
    }

    public BigDecimal getPaidCapital() {
        return this.paidCapital;
    }

    public TBillEntity setPaidCapital(BigDecimal paidCapital) {
        this.paidCapital = paidCapital;
        return this;
    }

    public BigDecimal getDiscountCapital() {
        return this.discountCapital;
    }

    public TBillEntity setDiscountCapital(BigDecimal discountCapital) {
        this.discountCapital = discountCapital;
        return this;
    }

    public Integer getExtensionCount() {
        return this.extensionCount;
    }

    public TBillEntity setExtensionCount(Integer extensionCount) {
        this.extensionCount = extensionCount;
        return this;
    }

    public Date getRepaymentDate() {
        return this.repaymentDate;
    }

    public TBillEntity setRepaymentDate(Date repaymentDate) {
        this.repaymentDate = repaymentDate;
        return this;
    }

    public Date getPayOffDate() {
        return this.payOffDate;
    }

    public TBillEntity setPayOffDate(Date payOffDate) {
        this.payOffDate = payOffDate;
        return this;
    }

    public BigDecimal getOverdueServiceFee() {
        return this.overdueServiceFee;
    }

    public TBillEntity setOverdueServiceFee(BigDecimal overdueServiceFee) {
        this.overdueServiceFee = overdueServiceFee;
        return this;
    }

    public BigDecimal getOverdueFee() {
        return this.overdueFee;
    }

    public TBillEntity setOverdueFee(BigDecimal overdueFee) {
        this.overdueFee = overdueFee;
        return this;
    }

    public BigDecimal getTheoreticalTotalAmount() {
        return this.theoreticalTotalAmount;
    }

    public TBillEntity setTheoreticalTotalAmount(BigDecimal theoreticalTotalAmount) {
        this.theoreticalTotalAmount = theoreticalTotalAmount;
        return this;
    }

    public Long getBillId() {
        return this.billId;
    }

    public TBillEntity setBillId(Long billId) {
        this.billId = billId;
        return this;
    }

    public Date getCreateDt() {
        return this.createDt;
    }

    public TBillEntity setCreateDt(Date createDt) {
        this.createDt = createDt;
        return this;
    }
}
